% Ultrasoon geluid
% Simulatie van aankomsttijden bij N receivers en 1 transmitter
% - Transmitter is oorsprong van assenstelsel

clc;
clear all;
close all;

c = 343;		% speed of sound
freq = 25e3;		% resonantie frequentie transmitter
lambda = c / freq;	% golflengte
d = 1 * lambda;	% afstand tussen sensoren
N = 7;			% aantal sensoren

resolution = 1000;

direction = [((N+1)/2)*d  40e-2]; % gericht op 30cm en boven middelste receiver

% Voor iedere ontvanger de aankomsttijd berekenen
for num_recv = 1:N
	dist_recv(num_recv) = sqrt((direction(1) - num_recv * d).^2 + direction(2).^2);
	time_recv(num_recv) = dist_recv(num_recv) ./ c;
end

% Een matrix met hoeken maken voor de plot
angle = linspace(-.5*pi, .5*pi, resolution); 

t = linspace(0,1/c,resolution); % 1000 punten over 1meter


for n = 1:resolution
	for num_recv = 1:N
		sensor_data(num_recv, :) = sin(2*pi*freq * (t - time_recv(num_recv) - ((num_recv - 1)*d/c * sin(angle(n)))));
	end
	sensor_data = sum(sensor_data);
	amplitude(n) = max(sensor_data);
end

% Lijngrafiek in polaire coordinaten maken
polar1 = polar(angle, abs(amplitude));
grid on;

%set(polar1, 'color', 'k', 'linewidth', 3)
hold on;
